#pragma once

#include "entity.h"

class CUnit;
class CEmitter;
class COwnedLight;

class CProjectile : public CEntity
{
private:
	CUnit* pOwner;
	tVector2D tVelocity;
	float fOrientation;
	CEmitter* pParticles;
	COwnedLight* pLight;

public:
	CUnit* GetOwner() const { return pOwner; }
	tVector2D GetVelocity() const { return tVelocity; }
	float GetOrientation() const { return fOrientation; }
	CEmitter* GetParticles() const { return pParticles; }
	COwnedLight* GetLight() const { return pLight; }

	void SetOwner(CUnit* val) { pOwner = val; }
	void SetVelocity(tVector2D val) { tVelocity = val; }
	void SetOrientation(float val) { fOrientation = val; }
	void SetParticles(CEmitter* val) { pParticles = val; }
	void SetLight(COwnedLight* val) { pLight = val; }

	virtual void Update(float fElapsedTime) override;
	virtual void Render() override;
};

